package com.dsg.service.apply;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsg.common.dto.OldCardDto;
import com.dsg.entity.apply.DsgApplyCar;
import com.dsg.entity.apply.DsgApplyCard;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsg.entity.dto.*;

import java.util.List;

/**
 * <p>
 * 油咭資料 服务类
 * </p>
 *
 * @author system
 * @since 2020-07-23
 */
public interface IDsgApplyCardService extends IService<DsgApplyCard>, IDsglService<DsgApplyCard> {
    IPage<ChangeCardDto> selectChangeCard(Page page, ChangeCardDto dto);
    DsgApplyCard selectReturnCardSC(String cardNo, String entCode);
    List<ReturnCardDto> selectReturnCard(String nodeName, String cardNo, String cardFaceName, String carOilType, String carNo, Boolean isReturn, String ownsId, String cardType);
    DsgApplyCard getDupCardBook(DsgApplyCar car, String cardType, String cardOid);
    OldCardDto getOldCard(OldCardDto dto);
    DsgApplyCard getDupCardCash(DsgApplyCar car, String cardType, String cardOid);
    List<CusCardDto> selectCusCard(CusCardSearchDto dto);
    String getOwnsIdByCardNo(String cardNo);
    List<CardRecordDto> selectCardRecord(Integer cardType, Integer appType, Integer cardStatus, Integer dedStatus, String entCode);

    /**
     * 查询咭列表（分页）
     * @param page
     * @param dsgApplyCard
     * @return
     */
    IPage<DsgApplyCard> selectDsgApplyCard(Page page, DsgApplyCard dsgApplyCard);
}
